package com.dev.springBootDemo;

import java.util.function.Supplier;
/**
 * SupplierTest 使用 Supplier 接口来获取一个值
 */
public class SupplierTest {

    
    public static void main(String[] args) {
        // 初始化一个整型数组
        int[] i = {3,75,32,76,98,42};
        
        // 使用 getMax 方法来获取数组中的最大值，传递一个 Supplier 实现来计算最大值
        int maxValue = getMax(()->{
            int max = i[0];
            // 遍历数组找到最大值
            for (int j = 1; j < i.length; j++) {
                if(i[j]>max){
                    max = i[j];
                }
            }
            return max;
        });
        
        System.out.println(maxValue);
    }
    
    /**
     * 使用 Supplier 获取一个值。
     * @param sup 提供值的 Supplier 实例
     * @return 由 Supplier 提供的值
     */
    private static Integer getMax(Supplier<Integer> sup){
        return sup.get();
    }
}
